Data recording method and data recording apparatus

ABSTRACT

In a data recording method and a data recording apparatus relating to the present invention, ECC blocks using 36 product codes are recorded on 12 tracks through scanning operations performed three times. First of all, first sync-blocks each constituted by adding a C1 parity to the data string of video data constituting an internal encoding calculation data stream are sequentially recorded. When the first sync-blocks are completely recorded, second sync-blocks each constituted by adding the C1 parity to the data string of C2 parity constituting the internal encoding calculation data stream are sequentially recorded. By recording the C2 parity at one time in a later stage, the system delay can be minimized.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] The present invention relates to a data recording method and a data recording apparatus preferable for use in a digital video tape recorder and the like. It, particularly relates to a data recording method and a data recording apparatus wherein input data is subjected to error correction encoding and the error correction-encoded data is recorded on a recording medium.

[0003] 2. Description of the Related Art

[0004] Conventionally, there has been proposed a digital video tape recorder in which every group of input video data is subjected to error correction encoding using a product code according to one or a plurality of encoding units, and thus the error correction coded data in one or a plurality encoding units is recorded on a recording medium such as one or a plurality of inclined tracks of a magnetic tape.

[0005] As described above, in the digital video tape recorder in which input video data is subjected to error correction encoding using a product code for each encoding unit to record it, portions of C2 parities (external encoding parities) are respectively located and recorded on an initial portion and an end portion of each inclined track as shown in FIG. 1, for example. FIG. 1 shows an example where video data of one field is recorded on 12 inclined tracks. In this case, four tracks are simultaneously scanned by four heads at one time, and thus, all of 12 tracks are scanned through 3 scanning operations.

[0006] When the data is recorded with the portions of C2 parities being located at the initial and end portions of each inclined track, a sync-block constituted by adding a C1 parity (internal encoding parity) to data string of the C2 parity which constitutes a C1 calculation data stream is sequentially recorded on each of the initial and end portions of each inclined track. On the other hand, a sync-block constituted by adding a C1 parity to data string of the video data which constitutes a C1 calculation data stream is sequentially recorded on the center portion of each inclined track.

[0007] In this case, it is required that the calculation of the C2 parity has been completed before the portion of this C2 parity is recorded for the first time. For this reason, as a consequence, recording of data on the inclined tracks can be started only after a group of input video data is entirely captured and the C2 parity is calculated and then the calculation of the C2 parity is completed.

[0008] For example, when a group of input video data is one field as described above, on an assumption that time T1 of one field is spent for capturing the entire group of input video data and time T2 is further spent for calculating a part of the C2 parity, the system delay Ta in an error correction code (ECC) encoder is T1+12, which is a long system delay.

[0009]FIG. 2 shows a system delay Ta in a conventional EEC encoder. In FIG. 2, a solid line 1 a shows input process of video data, whereas a broken line 1 b shows output process of C2 parity and video data.

[0010] If the system delay Ta is long in the ECC encoder as described above, the time required from the initiation of the input of the input data to the initiation of the recording of this input data is also longer accordingly. As a result, the following problems arise.

[0011] 1) When the video data is reproduced for confirmation immediately after it is recorded, the images reproduced by the reproduction video data has large time deviation from the images produced by the input video data, which runs the user into trouble in confirmation of the images; and

[0012] 2) In order to execute a pre-read editing operation, the recording and the reproduction heads are attached to heights largely deviated from each other, which causes the effective track length to be shortened, resulting in deterioration in S/N.

[0013] Herein, the pre-read editing operation means an editing operation in which video data of a specific frame recorded on a specific portion of a tape is reproduced, processing such as insertion of telop data into this video data of specific frame is performed, and then this video data of the specific frame is recorded again on the above-described specific portion of the tape.

[0014]FIG. 3 shows an exemplary pre-read editing system. A reproduction head Hp reproduces video data of a specific frame recorded on a specific portion of a tape 301. In this case, a reproduction amplifier 302 amplifies the reproduction signal reproduced on the reproduction head Hp, and an equalization circuit 303 has waveform-equalized it before a decoding circuit 304 receives it. The decoding circuit 304 decodes the waveform-equalized reproduction signal utilizing Viterbi algorithm, for example.

[0015] An error correction code (ECC) decoder 305 receives the video data from the decoding circuit 304. The ECC decoder 305 performs error correction by use of the parities added to the video data. A video expansion circuit 306 receives the error-corrected video data from the ECC decoder 305 and expands the video data.

[0016] The video data Va output from the video expansion circuit 306 is supplied to a fixed terminal 307 a of a switch circuit SW. On the other hand, telop data St to be inserted to the video data Va is supplied to a fixed terminal 307 b of the switch circuit SW, for example. In this case, the switch circuit SW is connected to the fixed terminal 307 b during a period when the telop data St is supplied, whereas the switch circuit SW is connected to the fixed terminal 307 a during the other periods. Thus, the switch circuit SW outputs video data Vb into which the telop data St has been inserted.

[0017] A video compression circuit 308 then receives the video data Vb from the switch circuit SW and performs data compression thereto. In this case, for example, the video data Vb is divided into a two-dimensional blocks of 8×8 pixels, and is data-compressed by use of block encoding such as discrete cosine transform (DCT). Although not described above, the video expansion circuit 306 performs processing reversal of this data compression.

[0018] An ECC encoder 309 receives the compression-encoded data from the data compression circuit 308. The ECC encoder 309 performs error correction encoding to the compression-encoded data for each encoding unit using a product code. The video data output from the ECC encoder 309 is supplied via a recording amplifier 310 to a recording head Hr that records the reproduction signal corresponding to the video data on the portion of the tape 301 from which the reproduction head Hp has reproduced this video data.

[0019] Here, during the time “t” from the point where the video data is reproduced by the reproduction head Hp to the point where the video data is recorded by the recording head Hr, the tape 301 travels a distance “d” proportional to the time “t”. For this reason, as shown in FIG. 4, the recording head Hr is attached at a position distanced from the reproduction head Hp by a difference (difference in heights between attached positions) “h” in order that, when the tape 301 travels the distance “d”, the recording head Hr scans the same portion which the reproduction head Hp scanned time “t” ago.

[0020] In this case, the recording head Hr is arranged to be in contact with the tape 301 within a range ARr. Specifically, in order to prevent the tape 301 from being cut by the recording head Hr coming into contact with the end portion of the tape 301, the recording head Hr is arranged to be in contact with the tape 301 at a position inward of the end portion of the tape 301 by a specific distance. Because of this arrangement, the reproduction head Hp comes into contact with the tape 301 within a range ARp. Therefore, this range ARp is an effective track length.

[0021] As described above, if the system delay Ta in the ECC encoder is long, the time “t” is long and the distance d is large accordingly. As a result, the step “h” is also large, resulting in a short effective track length ARp. When the effective track length ARp is short as in this case, the recording wavelength is shortened in order to ensure the same capacity of recording data as that of the case where the effective track length ARp is long. However, when the recording wavelength is short, the S/N is degraded.

SUMMARY OF THE INVENTION

[0022] An objective of the present invention is to shorten the time required from the initiation of the input of input data to the initiation of the recording of this input data.

[0023] According to a data recording method of the present invention, error correction encoding is performed on input data for each encoding unit by use of a product code and the error correction encoded data is recorded on one or a plurality of tracks of a recording medium in one or a plurality of encoding units. First, first sync-block is sequentially recorded on one or a plurality of tracks. The first sync-block is constituted by adding an internal encoding parity (C1 parity) to data string of the input data constituting an internal encoding calculation data stream. After the first sync-block is completely recorded, second sync-block is sequentially recorded. The second sync-block is constituted by adding the internal encoding parity (C1 parity) to data string of an external encoding parity (C2 parity) constituting the internal encoding calculation data stream.

[0024] Thus, the C2 parity is recorded at one time in a later stage. Regarding the C2 parity, it is enough that its calculation has been completed before its recording is started. For this reason, the recording of input data can be initiated even before a group of the input data to be recorded on one or a plurality of tracks is entirely captured. This enables the time required from the initiation of the input of the input data to the initiation of the recording of this input data to be shortened.

[0025] Further, a data recording apparatus of the present invention performs error correction encoding on input data for each encoding unit by use of a product code and records the error correction encoded data on one or a plurality of tracks of a recording medium in one or a plurality of encoding units. The apparatus comprises external encoding parity calculator for calculating and obtaining an external encoding parity for each encoding unit from data string constituting an external encoding calculation data stream. The apparatus also comprises internal encoding parity calculator for calculating and obtaining an internal encoding parity for each encoding unit from data string constituting an internal encoding calculation data stream. The apparatus further comprises recorder for recording first sync-block sequentially on one or a plurality of tracks, and recording second sync-block sequentially after the first sync-block is completely recorded. The first sync-block is constituted by adding an internal encoding parity obtained by the calculation of the internal encoding parity calculator to data string of the input data constituting an internal encoding calculation data stream. The second sync-block is constituted by adding the internal encoding parity obtained by the calculation of the internal encoding parity calculator to data string of the external encoding parity obtained by the calculation of the external encoding parity calculator. The data string of the external encoding parity also constitutes the internal encoding calculation data stream.

[0026] For example, when error-correction encoded data in m pieces of encoding units (m is an integer of 2 or larger) is recorded on one or a plurality of tracks of a recording medium, at least m pieces of calculating apparatus for calculating C2 parity are provided.

[0027] In this case, since the calculation of C2 parity in m pieces of encoding units is simultaneously executed in independent calculating apparatus, the calculations of C2 parity in m pieces of encoding units also can be completed when a group of input data to be recorded on one or a plurality of tracks has been entirely captured. As a result, it allows the initiation of C2 parity recording to be made earlier, thereby enabling the initiation of input data recording to be made earlier accordingly.

[0028] In addition, for example, when error-correction encoded data in m pieces of encoding units (m is an integer of 2 or larger) is recorded on one or a plurality of tracks of a recording medium, if there are calculating apparatus for calculating C2 parity in the number smaller than m pieces, C2 parity is calculated in each of the m pieces of encoding units of the data with the calculation being divided into a plurality of parts.

[0029] Thus, if there are calculating apparatus in the number smaller than m pieces, the calculation of the C2 parity in the respective m pieces of encoding units is initiated after a group of input data to be recorded on one or a plurality of tracks is entirely captured. However, when the calculation of the C2 parity in each of the m pieces of encoding units is performed with the calculation being divided into a plurality of parts, the calculation of the C2 parity in the m pieces of encoding units can be initiated before a group of input data to be recorded on one or a plurality of tracks is still not completely captured. As a result, the calculation of the C2 parity can be completed at an earlier point of time, and the recording of the input data can be initiated at earlier point of time accordingly.

[0030] With this arrangement, when the video data is reproduced for confirmation immediately after it is recorded, the invention avoids the images produced by the reproduction video data from having large time deviation from the images produced by the input video data. In this case, the user finds it easy to confirm the images. In addition, in order to execute the pre-read editing operation, the invention avoids the recording head and the reproduction head from being attached to heights largely deviated from each other. In this case, deterioration in S/N due to the shortening of the effective track length can be prevented.

[0031] The concluding portion of this specification particularly points out and directly claims the subject matter of the present invention. However those skill in the art will best understand both the organization and method of operation of the invention, together with further advantages and objects thereof, by reading the remaining portions of the specification in view of the accompanying drawing(s) wherein like reference characters refer to like elements.

BRIEF DESCRIPTION OF THE DRAWINGS

[0032]FIG. 1 is a diagram for showing an exemplary of conventional arrangement of C2 parities;

[0033]FIG. 2 is a diagram for showing a system delay in a conventional ECC encoder;

[0034]FIG. 3 is a diagram for showing an exemplary pre-read editing system;

[0035]FIG. 4 is a diagram for showing a relationship between a system delay and a step formed between a recording head and a reproduction head in a pre-read editing system;

[0036]FIG. 5 is a block diagram for showing a configuration of a recording and reproducing apparatus as an embodiment of the invention;

[0037]FIG. 6 is a diagram for illustrating a recording format;

[0038]FIG. 7 is a diagram for illustrating an arrangement of magnetic heads;

[0039]FIG. 8 is a diagram for showing a configuration of an ECC block of video data;

[0040]FIG. 9 is a diagram for showing a configuration of one sync-block of video data;

[0041]FIGS. 10A to 10C are diagrams for illustrating an arrangement of sync-blocks within 12 tracks;

[0042]FIG. 11 is a diagram for showing an arrangement of C2 parity;

[0043]FIG. 12 is a block diagram for showing a configuration of an ECC encoder;

[0044]FIG. 13 is a block diagram for showing a configuration of a C2 encoder;

[0045]FIG. 14 is a diagram for showing a system delay in an ECC encoder (in the case of including 36 calculating apparatus);

[0046]FIG. 15 is a diagram for showing a system delay in an ECC encoder (in the case of including one calculating apparatus and the calculation is not divided into a plurality of parts);

[0047]FIG. 16 is a diagram for showing a state of initialization at the time when the calculation of the C2 parity is performed by use of one calculating apparatus with the calculation being divided into a plurality of parts;

[0048]FIG. 17 is a diagram for showing a state of calculation at the time when the calculation of the C2 parity is performed by use of one calculating apparatus with the calculation being divided into a plurality of parts;

[0049]FIG. 18 is a diagram for showing a state of outputting the result of calculation at the time when the calculation of the C2 parity is performed by use of one calculating apparatus with the calculation being divided into a plurality of parts;

[0050]FIG. 19 is a diagram for showing a state of loading a result obtained at some midpoint of calculation at the time when the calculation of the C2 parity is performed by use of one calculating apparatus with the calculation being divided into a plurality of parts; and

[0051]FIG. 20 is a diagram for showing a system delay in an ECC encoder (in the case of performing the calculation divided into four parts by use of one calculating apparatus).

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS OF THE INVENTION

[0052] Hereinafter, embodiments of the present invention will be described with reference to drawings. FIG. 5 shows a basic configuration of a recording and reproducing apparatus 100 as an embodiment of the invention. For the purpose of simplicity, illustration of an audio system is omitted.

[0053] First, a recording system will be described. A video compression circuit 112 receives digital video data Vin through an input terminal 111. The video compression circuit 112 divides the video data Vin into two-dimensional blocks of 8×8 pixels, for example, and then performs data-compression using block encoding such as DCT.

[0054] An ECC encoder 113 receives video data VDa (compression-encoded data) from the data compression circuit 112. The ECC encoder 113 performs error correction encoding on the compression-encoded data VDa for each encoding unit by use of a product code. A recording head Hr receives the recording video data (error correction encoded data) VDb from the ECC encoder 113 through a recording amplifier 114 to record the video data sequentially on the recording tracks of a magnetic tape 120.

[0055] In this case, the video data VDb is recorded in its original non-return-to-zero (NRZ) format without digital modulation. Alternatively, the video data VDb may be recorded after it is subjected to digital modulation.

[0056] Next, a reproduction system will be described. A reproduction head Hp reproduces a reproduction signal from the recording tracks of the magnetic tape 120 and a reproduction amplifier 131 amplifies it. An equalization circuit 132 has then performed waveform-equalization thereon before a decoding circuit 133 receives it. The decoding circuit 133 decodes the waveform-equalized reproduction signal utilizing Viterbi algorithm, for example, so as to produce reproduction video data VDc corresponding to the recording video data VDb output from the ECC encoder 113 in the recording system described above.

[0057] An ECC decoder 134 receives the reproduction video data VDc from the decoding circuit 133. The ECC decoder 134 performs error correction by use of the parities (C1 parity, C2 parity) added to the video data VDc.

[0058] A video expansion circuit 135 receives the error-corrected video data (compression encoded data) VDd from the ECC decoder 134. The video expansion circuit 135 performs data expansion through processing reversal of the processing performed by the video compression circuit 112 in the recording system. Then, the video data Vout output from the video expansion circuit 135 is output through an output terminal 136.

[0059]FIG. 6 shows a recording format of a magnetic tape 120. On the magnetic tape 120, tracks T inclined with respect to the longitudinal direction of the magnetic tape 120 are sequentially formed. In this case, two adjacent tracks T have different recording azimuths.

[0060] Video data areas ARV_(L), ARV_(U) are respectively allocated to the end region of the track T at which the scanning is initiated and the end region of the track T at which the scanning is finished. The video data areas ARV_(L), ARV_(U) record the recording video data VDb output from the above-described ECC encoder 113. An audio data area ARA is allocated to the area interposed between the video areas ARV_(L), ARV_(U) in the track T. This audio data area ARA records recording audio data although an audio system is not illustrated in FIG. 1.

[0061]FIG. 7 is a schematic diagram for showing a structure of a rotating drum in the recording and reproducing apparatus 100 shown in FIG. 5. The magnetic tape 120 is obliquely wound around the rotating drum 140 at a winding angle of 180 degrees. The magnetic tape 120 travels at a specific speed with it being wound around the rotating drum 140.

[0062] On the rotating drum 140, four recording heads RECA to RECD are arranged, and additional four recording heads RECE to RECH are arranged at positions 180 degrees apart from the four recording heads RECA to RECD. Further, on the rotating drum 140, eight reproduction heads PBA to PBH corresponding to the recording heads RECA to RECH are arranged at positions 90 degrees apart from the recording heads RECA to RECH, respectively.

[0063] Thus, the recording head Hr of the recording and reproducing apparatus 100 shown in FIG. 5 uses eight actual recording heads PECA to PECH as described above. In addition, the reproduction head Hp of the recording and producing apparatus 100 shown in FIG. 5 uses eight actual production heads PBA to PBH as described above. Video data of one field is recorded on twelve tracks. At the times of recording and reproduction, four heads simultaneously scan four tracks in one scanning operation, so that twelve tracks can be completely scanned when scanning operation is conducted three times.

[0064] The video data areas ARV_(L), ARV_(U) of twelve tracks record 36 ECC blocks from block 0 to block 35 (data in encoding units) as shown in FIG. 8. One ECC block is constituted as follows. Specifically, for the video data constituted by data array of 226×114 bytes, data in each column (data string) is encoded according to (126, 114) Reed-Solomon code, for example, in the external encoding calculation data stream shown by an arrow “b” to generate a C2 parity of 12-byte (external encoding parity). In addition, for the video data and the C2 parity, data in each row (data string) is encoded according to (242, 226) Reed-Solomon code, for example, in the internal encoding calculation data stream shown by an arrow “a” to generate C1 parity of 16-byte. At a leading end of each data string, sync-data and ID each having a size of 2-byte are arranged.

[0065]FIG. 9 shows a configuration of one sync-block in the ECC block. Two bytes at the leading end are sync-data. The subsequent two bytes are ID. The ID includes a track ID for identifying which track among twelve tracks records this one sync-block and a sync-block ID for identifying which sync-block among the plurality of sync-blocks recorded on one inclined track is this one sync-block. Further, one segment is constituted for every twelve tracks, and segment numbers from 0 to 3 are repeatedly allocated to the segments sequentially. The two-byte ID described above also includes a segment ID indicating the segment number of the segment that records this one sync-block.

[0066] The ID is followed by video data of 226-byte (or a C2 parity) and a C1 parity of 16-byte.

[0067] As described above, twelve tracks on the magnetic tape 120 record 36 ECC blocks (see FIG. 8). FIG. 10 shows an arrangement of sync-blocks in each of the ECC blocks in the video data areas ARV_(L), ARV_(U) of twelve tracks, which constitute one segment.

[0068] As shown in FIG. 10A, in four tracks 0 to 3, which are scanned for the first time, the video data area ARV_(L) records sync-blocks of 21 rows from 0th to 20th rows in each of the ECC blocks 0 to 35, whereas the video data area ARV_(U) records sync-blocks of 21 rows from 21st to 41st rows in each of the ECC blocks 0 to 35.

[0069] In four tracks 4 to 7, which are scanned for the second time, the video data area ARV_(L) records sync-blocks of 21 rows from 42nd to 62nd rows in each of the ECC blocks 0 to 35, whereas the video data area ARV_(U) records sync-blocks of 21 rows from 63rd to 83rd rows in each of the ECC blocks 0 to 35.

[0070] In four tracks 8 to 11, which are scanned for the third time, the video data area ARV_(L) records sync-blocks of 21 rows from 84th to 104th rows in each of the ECC blocks 0 to 35, whereas the video data area ARV_(U) records sync-blocks of 21 rows from 105th to 125th rows in each of the ECC blocks 0 to 35.

[0071] Here, the sync-block of 0th row is constituted by 0th sync-block in each of the ECC blocks 0 to 35. As is shown in FIG. 10B, these 36 sync-blocks are divided into four groups so that nine sync-blocks are allocated to each of the tracks 0 to 4. Specifically, the track 0 records 0th sync-block in each of the ECC blocks 0, 18, 1, 19, 2, 20, 3, 21, and 4; the track 1 records 0th sync-block in each of the ECC blocks 22, 5, 23, 6, 24, 7, 25, 8, and 26; the track 2 records 0th sync-block in each of the ECC blocks 9, 27, 10, 28, 11, 29, 12, 30, and 13; and the track 3 records 0th sync-block in each of the blocks 31, 14, 32, 15, 33, 16, 34, 17, and 35.

[0072] Hereinafter, in the same manner as described above, the sync-blocks from 1st to 125th rows are respectively constituted by 1st to 125th sync-blocks in each of the ECC blocks 0 to 35. These 36 sync-blocks are divided into four groups so that nine sync-blocks are allocated to and recorded on the corresponding four tracks, respectively. In this case, the ECC blocks taken out from the 9 sync-blocks recorded on each of the 4 tracks are shuffled for every row. As shown in FIG. 10C, one sync-block is constituted by two-byte sync data, two-byte ID, 226-byte video data (or a C2 parity), and a 16-byte C1 parity.

[0073] Here, the sync-blocks of 0th to 125th rows are sequentially recorded on the tracks 0 to 11. In this case, the sync-blocks of 0th to 113th rows are respectively constituted by adding a C1 parity to data string of the video data which constitutes an internal encoding calculation data stream, whereas the sync-blocks of 114th to 125th rows are respectively constituted by adding a C1 parity to data string of the C2 party which constitutes an internal encoding calculation data stream.

[0074] Specifically, in this embodiment, when 36 ECC blocks 0 to 35 are recorded on 12 tracks, as shown in FIG. 11, the first sync-blocks constituted by adding a C1 parity to the data string of the video data, which constitutes an internal encoding calculation data stream, are sequentially recorded. When the recording of the first sync-blocks is completed, the second sync-blocks constituted by adding a C1 party to the data string of the C2 parity, which constitutes an internal encoding calculation data stream, are sequentially recorded.

[0075] Next, the ECC encoder 113 in the recording and reproducing apparatus 100 shown in FIG. 5 will be described in detail. FIG. 12 shows a configuration of the ECC encoder 113.

[0076] The ECC encoder 113 includes a synchronous dynamic RAM (SDRAM) 151 and an SDRAM interface 152 for writing and reading data into and from the SDRAM 151. The SDRAM 151 has a capacity capable of recording video data of a plurality of fields. In this case, in the SDRAM 151, memory spaces corresponding to 36 ECC blocks (see FIG. 8) are prepared for each field.

[0077] The ECC encoder 113 also includes an input-write buffer 153 for buffering and writing video data (compression encoded data) VDa supplied from the video compression circuit 112 into the SDRAM 151, and a C2 read buffer 154 for buffering and supplying the video data corresponding to 36 ECC blocks, which is read from the SDRAM 151, to a C2 encoder 155 described later.

[0078] The ECC encoder 113 further includes a C2 encoder 155 for calculating a C2 party (an external encoding parity) in each of the 36 ECC blocks for each field. The C2 encoder 155 includes 36 calculating apparatus each for calculating the C2 parity, and can calculate C2 parities in the above-described 36 ECC blocks simultaneously.

[0079] Due to this arrangement, video data corresponding to the 36 ECC blocks is simultaneously supplied from the C2 read buffer 154 to the C2 encoder 155. At this time, video data of each of the ECC blocks is supplied in the order of data from 0th to 113th sync-blocks.

[0080] The ECC encoder 113 further includes a C2 write buffer 156 for buffering and writing C2 parity in each of the 36 ECC blocks, calculated in the C2 encoder 155, into the SDRAM, and an output buffer 157 for buffering and outputting video data and the C2 parity, which are read from SDRAM 151 and correspond to each of the 36 ECC blocks for each field.

[0081] The ECC encoder 113 further includes a SYNC/ID addition circuit 158 for adding sync-data and ID to data string of the video data (or C2 parity) of each sync-block which is output from the output buffer 157 in the order that the video data (or C2 parity) have been recorded, and a C1 encoder 159 for calculating a C1 parity and adding it to the video data of each sync-block to which the sync-data and ID have been added in the SYNC/ID addition circuit 158 and then for outputting the resultant data as recording video data VDb.

[0082] An operation of the ECC encoder 113 shown in FIG. 12 will be described.

[0083] The video compression circuit 112 (see FIG. 5) supplies the video data (compressed encoded data) VDa to the SDRAM 151 via the input-write buffer 153 and the SDRAM interface 152 and the SDRAM 151 writes the video data VDa. In this case, the video data VDa of each field is written into the video data areas in the memory spaces of their corresponding 36 ECC blocks, respectively (see FIG. 8).

[0084] Further, for each field, the SDRAM 151 reads the video data corresponding to the 36 ECC blocks and supplies the video data to the C2 encoder 155 via the SDRAM interface 152 and the C2 read buffer 154. In this case, the C2 read buffer 154 supplies the video data corresponding to the 36 ECC blocks simultaneously to the C2 encoder 155. Further, in this case, the video data of each ECC block is supplied in the order of data of 0th to 113th sync blocks.

[0085] The C2 encoder 155 simultaneously calculates C2 parity in each of the 36 ECC blocks for each field by use of 36 calculators. The C2 encoder 155 supplies the C2 parity thus calculated, for each field, in each of the 36 ECC blocks to the SDRAM 151 via the C2 write buffer 156 and the SDRAM interface 152. The C2 parity is then written into the C2 parity areas in the memory spaces of their corresponding 36 ECC blocks.

[0086] Further, the SDRAM 151 reads the video data and C2 parity, which correspond to each of the 36 ECC blocks, for each field and supplies them to the output buffer 157 via the SDRAM interface 152. The output buffer 157 then outputs the video data (or C2 parity) of each sync-block in the order that the video data have been recorded and supplies it to the C1 encoder 159 after sync-data and ID are added to the video data in the SYNC/ID addition circuit 158.

[0087] Then, the C1 encoder 159 calculates a C1 parity therefrom and adds it to the video data of each sync-block to which the sync-data and ID have been added, so as to produce each sync-block as recording video data VDb. The recording video data VDb is supplied to the recording amplifier 114 (se FIG. 5) as described above.

[0088] Next, the C2 encoder 155 will be described in detail. FIG. 13 shows a configuration of the C2 encoder 155. The C2 encoder 155 includes 36 calculating apparatus 170 ⁻⁰ to 170 ⁻³⁵. The calculating apparatus 170 ⁻⁰ to 170 ⁻³⁵ calculates C2 parity in one ECC block.

[0089] Hereinafter, the calculating apparatus 170 ⁻⁰ to 170 ⁻³⁵ will be described. Since the calculating apparatus 170 ⁻⁰ to 170 ⁻³⁵ has an identical structure to each other, only the calculating apparatus 170 ⁻⁰ will be described.

[0090] The calculating apparatus 170 ⁻⁰ includes n pieces of matrix calculators 200 ⁻⁰ to 200 _(−(n−1)), n pieces of RAMs 201 ⁻⁰ to 201 _(−(n−1)) for producing codes in a vertical direction, n-pieces of exclusive OR gates for calculating exclusive-OR (hereinafter, referred to as “EX-OR gates”) 203 ⁻¹ to 203 _(−n), and n pieces of selectors 204 ⁻¹ to 204 _(−n).

[0091] Here, the output from the matrix calculator 200 ⁻⁰ is supplied to the RAM 201 ⁻⁰ as write data. The outputs from the selectors 204 ⁻¹ to 204 _(−(n−1)) are respectively supplied to the RAMs 201 ⁻¹ to 201 _(−(n−1)) as write data. The outputs from the matrix calculators 200 ⁻¹ to 200 _(−(n−1)) are respectively supplied to I sides of the selectors 204 ⁻¹ to 204 _(−(n−1)) and also supplied to the EX-OR gates 203 ⁻¹ to 203 _(−(n−1)).

[0092] The items of the read data from the RAMs 201 ⁻¹ to 201 _(−(n−1)) are respectively supplied to the EX-OR gates 203 ⁻¹ to 203 _(−n). The outputs from the EX-OR gates 203 ⁻¹ to 203 _(−(n−1)) are respectively supplied to P and R sides of the selectors 204 ⁻¹ to 204 _(−(n−1)), whereas the output from the EX-OR gate 203 _(−n) is supplied to P side of the selector 204 _(−n).

[0093] A value “00h” is supplied to R side of the selector 204 _(−n). The “h” means that this value is in hexadecimal. Input data is supplied to the EX-OR gate 203 _(−n) and I side of selector 204 _(−n). Then, output data is taken out from the RAM 201 _(−(n−1)). Further, the output from the selector 204 _(−n) is supplied to the matrix calculators 200 ⁻⁰ to 200 _(−(n−1)) as feedback data.

[0094] The selectors 204 ⁻¹ to 204 _(−n) receive an operation control signal, respectively. In this case, the selectors 204 ⁻¹ to 204 _(−n) output the data which has been supplied to their I sides at the time of initialization whereas the selectors 204 ⁻¹ to 204 _(−n) output the data which has been supplied to their P sides at the time of calculation. At the time of outputting the result obtained from the calculation of the C2 parity, the selectors 204 ⁻¹ to 204 _(−n) output the data, which has been supplied to their R sides.

[0095] The RAMs 201 ⁻⁰ to 201 _(−(n−1)) have a word length in data length of an internal encoding calculation data stream, that is, 226-byte word length. The n is in an identical number to the byte number of the C2 parity, that is, 12.

[0096] Next, operations of the calculating apparatus 170 ⁻⁰ will be described.

[0097] First, initialization is performed based on data of the first one symbol (herein, one-byte) among input data to be encoded. In this case, actually, 226 items of byte data in data length of the internal encoding calculation data stream, that is, each corresponding to 226 streams related to the external encoding calculation data streams are sequentially supplied. At the time of initialization, the selectors 204 ⁻¹ to 204 _(−(n−1)) at respectively output the data which has been supplied to their I sides. Therefore, at the time of this initialization, the selectors 204 ⁻¹ to 204 _(−(n−1)) respectively supply the outputs from the matrix calculators 200 ⁻¹ to 200 _(−(n−1)) to the subsequent stages without undertaking any processing, and the selector 204 _(−n) outputs input data.

[0098] As a result, the first one symbol is supplied to the matrix calculators 200 ⁻⁰ to 200 _(−(n−1)) as feedback data without undergoing any processing. Then, the result of calculation performed by the matrix calculator 200 ⁻⁰ is stored at an address position of the RAM 201 ⁻⁰ which corresponds to one symbol stream (i.e. any one of 226 streams related to the external encoding calculation data stream) of input data at that time. Further, the results of calculations performed by the matrix calculators 200 ⁻¹ to 200 _(−(n−1)) are respectively stored at address positions of the RAMs 201 ⁻¹ to RAM 201 _(−(n−1)) which correspond to one symbol stream of input data at that time via the selectors 204 ⁻¹ to 204 _(−(n−1)) respectively. In this manner, initialization is performed. As describe above, 226 items of byte data are sequentially supplied as the first one symbol, thereby executing initialization for 226 streams related to the external encoding calculation data stream.

[0099] Next, a C2 parity is calculated. At the time of calculation of the C2 parity, the selectors 204 ⁻¹ to 204 _(−n) respectively output the data, which has been supplied to their P sides. Therefore, at the time of this calculation, the selectors 204 ⁻¹ to 204 _(−n) respectively supply the outputs from the EX-OR gates 203 ⁻¹ to 203 _(−n) to the subsequent stages.

[0100] Among input data, items of data of one symbol of second or later are sequentially supplied to the EX-OR gate 203 _(−n). In this case, as the data of one symbol of the second or later, actually, 226 items of byte data which respectively correspond to the 226 streams related to the external encoding calculation data stream are sequentially supplied. Data of the stream, which is read from the RAM 201 _(−(n−1)) located at the last stage and corresponds to one symbol stream of the input data at that time, is supplied to the EX-OR gate 203 _(−n).

[0101] The EX-OR gate 203 _(−n) calculates exclusive-OR of data of each of the second symbol and thereafter and the data which has been read from the RAM 201 _(−(n−1)). The output from the EX-OR gate 203 _(−n) is supplied to each of the matrix calculators 200 ⁻⁰ to 200 _(−(n−1)) as feedback data via the selector 204 _(−n).

[0102] Then, the result of calculation performed by the matrix calculator 200 ⁻¹ is stored at an address position corresponding to one symbol stream of input data of the RAM 201 ⁻¹ at that time. The results of calculations performed by the matrix calculators 200 ⁻¹ to 200 _(−(n−1)) and the data of the stream which are read from RAMs 200 ⁻¹ to 200 _(−(n−1)) and correspond to the stream of input data at that time are supplied to the EX-OR gates 203 ⁻¹ to 203 _(−(n−1)) respectively. The EX-OR gates 203 ⁻¹ to 203 _(−(n−1)) calculate exclusive-OR thereon. The outputs from the EX-OR gates 203 ⁻¹ to 203 _(−(n−1)) are respectively stored at address positions of the RAM 201 ⁻¹ to RAM 201 _(−(n−1)) which correspond to one symbol stream of input data at that time via the selectors 204 ⁻¹ to 204 _(−(n−1)) respectively.

[0103] As described above, 226 items of byte data are sequentially supplied as data of one symbol of the second or later, thereby executing calculation for 226 streams related to the external encoding calculation data stream. When all of 114 symbols (114 bytes) in data length of the external encoding calculation data stream are completely input, the calculation of the C2 parity is completed. In this case, C2 parity for 226 streams is stored in the RAMs 201 ⁻⁰ to RAM 201 _(−(n−1)).

[0104] Next, the C2 parity for 226 streams, which is obtained as a result of calculations, is output. At the time of this output, the selectors 204 ⁻¹ to 204 _(−n) respectively output the data, which has been supplied to their R sides. Therefore, at the time of this output, the selectors 204 ⁻¹ to 204 _(−(n−1)) respectively supply the outputs from the EX-OR gates 203 ⁻¹ to 203 _(−(n−1)) to the subsequent stages, and the selector 204 _(−n) outputs “00h”.

[0105] In this case, “00h” is supplied to the matrix calculators 200 ⁻⁰ to 200 _(−(n−1)) as feedback data. When the feedback data is “00h”, the matrix calculators 200 ⁻⁰ to 200 _(−(n−1)) output “00h”. Therefore, the EX-OR gates 203 ⁻¹ to 203 _(−(n−1)) other than that located at the last stage, which operate based on the outputs from the matrix calculators 200 ⁻¹ to 200 _(−(n−1)) and the read data from the RAMs 201 ⁻⁰ to 201 _(−(n−2)) always output read data from the RAM 201 ⁻⁰ to 201 ⁻²⁾ without undertaking any processing to the read data.

[0106] In summary, in this case, the RAMs 201 ⁻⁰ to 201 _(−(n−1)) simply operate as shift registers. Therefore, the RAM 201−(n−1) located at the last stage sequentially outputs the C2 parity for 226 stream related to the external encoding calculation data stream.

[0107] As described above, in this embodiment, at the time of recording 36 ECC blocks on 12 tracks, the first sync-blocks which are constituted by adding the C1 parity to the data string of the video data constituting the internal encoding calculation data stream are sequentially recorded first. When all of the first sync-blocks are completely recorded, the second sync-blocks which are constituted by adding the C1 parity to the data string of C2 parity constituting the internal encoding calculation data stream are sequentially recorded (see FIG. 11).

[0108] As described above, the C2 parity is recorded at one time in a later stage, and it is enough that the calculations of the C2 parity are completed before their recording is started. Therefore, before video data of one field, which is a group of the video data to be recorded on twelve tracks, is entirely captured in the ECC encoders 113, the recording of the video data can be started. This allows the time required from the initiation of the input of the video data to the initiation of the recording of this video data to be shortened.

[0109]FIG. 14 shows a system delay Tb in the ECC encoder 113, where a solid line “a” shows an input process of video data, whereas a broken line “b” shows an output process of C2 parity and video data. As shown in this drawing, the system delay Tb in this embodiment is significantly shortened as compared with the system delay Ta in a prior art (see FIG. 2).

[0110] In the embodiment described above, the C2 encoder 155 includes 36 calculating apparatus 170 ⁻⁰ to 170 ⁻³⁵. Alternatively, the C2 encoder 155 may include only one calculating apparatus having the same configuration as that of the calculating apparatus 170 ⁻⁰, for example. In this manner, the circuit scale and the memory scale can be reduced.

[0111] In this case, after video data for one field, which is a group of video data to be recorded on 12 tracks, is entirely captured in the ECC encoder 113, this one calculating apparatus may calculate the C2 parity in each of the 36 ECC blocks 0 to 35 sequentially.

[0112]FIG. 15 shows an input process of video data (shown by a solid line “a”), a calculation process of the C2 parity in each of the 36 ECC blocks (shown by an alternate long and short dash line “c”), and an output process of the C2 parity and the video data (shown by a broken line “b”) observed in this case. Here, in the portion corresponding to “data” in the calculation process of C2 parity, video data is read from the SDRAM 151, and this read video data is input into the C2 encoder 155 so as to obtain the C2 parity. In the portion corresponding to “C2”, the C2 parity obtained by the C2 encoder 155 is written into the SDRAM 151.

[0113] Also in this case, the C2 parity is recorded at one time in a later stage, and it is enough that the calculation of the C2 parity is completed before their recording is started. Therefore, it is possible to start the recording of the video data before the video data for one field, which is a group video data to be recorded on 12 tracks, is entirely captured in the ECC encoder 113.

[0114] In this manner, the time required from the initiation of the input of the video data into the ECC encoder 113 to the initiation of the recording of this video data can be shortened. In this case, although the system delay Tc in the ECC encoder 133 is shorter than the system delay Ta in a prior art (see FIG. 2), the system delay Tc is longer than the system delay Tb observed in the case where the C2 encoder 155 includes 36 calculating apparatus 170 ⁻⁰ to 170 ⁻³⁵ (see FIG. 14).

[0115] Next, an alternative configuration of the C2 encoder 155 will be described. In the embodiment described above, the C2 encoder 155 includes 36 calculating apparatus 170 ⁻⁰ to 170 ⁻³⁵. In this alternative embodiment, the C2 encoder 155A includes one calculating apparatus 170 for calculating C2 parity in each of the ECC blocks with the calculation being divided into a plurality of parts.

[0116] A configuration of the calculating apparatus 170 will be described with reference to FIGS. 16 to 19. In these drawings, the constituent elements corresponding to those of FIG. 13 are denoted by the same reference numerals.

[0117] The calculating apparatus 170 includes n pieces of matrix calculators 200 ⁻¹ to 200 _(−(n−1)) n pieces of RAMs 201 ⁻⁰ to 201 _(−(n−1)) for producing codes in a vertical direction, n pieces of exclusive EX-OR gates for calculating exclusive-OR, and (n+1) pieces of selectors 204 ⁻⁰ to 204 _(−n).

[0118] Here, the output from the matrix calculator 200 ⁻⁰ is supplied to P and I sides of the selector 204 ⁻⁰. The outputs from the selectors 204 ⁻⁰ to 204 _(−(n−1)) are respectively supplied to the RAMs 201 ⁻⁰ to 201 _(−(n−1)) as write data. The outputs from the matrix calculators 200 ⁻¹ to 200 _(−(n−1)) are respectively supplied to I sides of the selectors 204 ⁻¹ to 204 _(−(n−1)), and are also supplied to the EX-OR gates 203 ⁻¹ to 203 _(−(n−1)).

[0119] Further, the items of the read data from the RAMs 201 ⁻⁰ to 201 _(−(n−1)) are respectively supplied to the EX-OR gates 203 ⁻¹ to 203 _(−n). The outputs from the EX-OR gates 203 ⁻¹ to 203 _(−(n−1)) are respectively supplied to P and R sides of the selectors 204 ⁻¹ to 204 _(−(n−1)), and the output from the EX-OR gate 203 _(−n) is supplied to P side of the selector 204 _(−n).

[0120] A value “00h” is supplied to R side of the selector 204 _(−n). The “h” means that this value is in hexadecimal. Input data is supplied to the EX-OR gate 203 _(−n) and I and W sides of the selector 204 _(−n). Then, output data is taken out from the RAM 201 _(−(n−1)). Further, the output from the selector 204 _(−n) is supplied to the matrix calculators 200 ⁻⁰ to 200 _(−(n−1)) as feedback data, and is also supplied to the W sides of the selectors 204 ⁻⁰ to 204 _(−(n−1)).

[0121] An operation control signal is respectively supplied to the selectors 204 ⁻⁰ to 204 _(−n). In this case, at the time of initialization, the selectors 204 ⁻⁰ to 204 _(−n) output the data, which has been supplied to their I sides. At the time of calculation, the selectors 204 ⁻⁰ to 204 _(−n) output the data, which has been supplied to their P sides. At the time of outputting the calculation result of C2 parity (including the result obtained at some midpoint in the calculation), the selectors 204 ⁻⁰ to 204 _(−n) output the data, which has been supplied to their R sides. At the time of loading the result obtained at some midpoint in the calculation of C2 parity, the selectors 204 ⁻⁰ to 204 _(−n) output the data, which has been supplied to their W sides.

[0122] The RAMs 201 ⁻⁰ to 201 _(−(n−1)) respectively have a word length in data length of an internal encoding calculation data stream, that is, 226-byte word length. The “n” indicates an identical number to the byte number of the C2 parity, that is, 12.

[0123] Next, an operation for calculating the C2 parity in each of the 36 ECC blocks (see FIG. 8) by use of the calculating apparatus 170 will be described. Here, the calculation of C2 parity in each ECC block is performed with the calculation being divided into four times.

[0124] Suppose that video data of the ECC blocks 0 to 35 are simultaneously written into the SDRAM 151. Specifically, video data of the ECC blocks 0 to 35 are written into the SDRAM 151 in the order of video data of 0th sync-block in the block 0, video data of 0th sync-block in the block 1, . . . , video data of 0th sync-block in the block 35, video data of 1st sync-block in the block 0, video data of 1st sync-block in the block 1, . . . , video data of 1st sync-block in the block 35, video data of 113th sync-block in the block 0, video data of 113th sync-block in block 1, . . . , and video data of 113th sync-block in the block 35.

[0125] First, a first divided part of the calculation of C2 parity in the ECC block 0 is performed. In this case, first of all, among input data to be encoded, data of the first one symbol (for example, one byte) is read from the SDRAM 151 and is supplied to the calculating apparatus 170 as input data for initialization. FIG. 16 shows a state at the time of initialization. In this case, as the data of the first one symbol, actually, 226 items of byte data in data length of the internal encoding calculation data stream, that is, byte data which respectively correspond to the 226 streams related to the external encoding calculation data stream are sequentially supplied. At the time of initialization, the selectors 204 ⁻⁰ to 204 _(−n) respectively output the data, which has been supplied to their I sides. Therefore, at the time of this initialization, the selectors 204 ⁻⁰ to 204 _(−(n−1)) respectively supply the outputs from the matrix calculators 200 ⁻⁰ to 200 _(−(n−1)) to the subsequent stages without undertaking any processing, and the selector 204 _(−n) outputs the input data.

[0126] As a result, the first one symbol is supplied to the matrix calculators 200 ⁻⁰ to 200 _(−(n−1)) as feedback data without undergoing any processing. Then, the results of calculations performed by the matrix calculators 200 ⁻⁰ to 200 _(−(n−1)) are stored at address positions of the RAM 201 ⁻⁰ to RAM 201 _(−(n−1)) which correspond to one symbol stream (i.e. any one of 226 streams related to the external encoding calculation data stream) of the input data at that time via the selectors 204 ⁻⁰ to 204 _(−(n−1)) respectively. In this manner, initialization is performed. As describe above, 226 items of byte data are sequentially supplied as the first one symbol, thereby executing initialization for 226 streams related to the external encoding calculation data stream.

[0127] Next, a C2 parity is calculated. FIG. 17 shows a state at the time of calculation. At the time of calculation of the C2 parity, the selectors 204 ⁻⁰ to 204 _(−n) respectively output the data, which has been supplied to their P sides. Therefore, at the time of this calculation, the selector 204 ⁻⁰ supplies the result of calculation performed by the matrix calculator 200 ⁻⁰ to the subsequent stages and the selectors 204 ⁻¹ to 204 _(−n)respectively supply the outputs from the EX-OR gates 203 ⁻¹ to 203 _(−n) to the subsequent stages.

[0128] Among input data, items of the data of each one symbol of second or later are sequentially supplied to the EX-OR gate 203 _(−n). In this case, as the data of each one symbol of second or later, actually, 226 items of byte data which respectively correspond to the 226 streams related to the external encoding calculation data stream are sequentially supplied. Data of the stream, which is read from the RAM 201 _(−(n−1)) located at the last stage and corresponds to one symbol stream of the input data at that time, is supplied to the EX-OR gate 203 _(−n).

[0129] The EX-OR gate 203 _(−n) calculates exclusive-OR of data of each one symbol of second or later and the data, which has been read from the RAM 201 _(−(n−1)). The output from the EX-OR gate 203 _(−n) is supplied to each of the matrix calculators 200 ⁻⁰ to 200 _(−(n−1)) as feedback data via the selector 204 _(−n).

[0130] Then, the result of calculation performed by the matrix calculator 200 ⁻⁰ is stored at an address position which corresponds to one symbol stream of input data of the RAM 201 ⁻⁰ at that time. The EX-OR gates 203 ⁻¹ to 203 _(−(n−1)) respectively receive the results of calculations performed by the matrix calculators 200 ⁻¹ to 200 _(−(n−1)) and the data of the stream, which corresponds to the stream of input data at that time, to calculate exclusive-OR thereof. The outputs from the EX-OR gates 203 ⁻¹ to 203 _(−(n−1)) are respectively stored at address positions of the RAM 201 ⁻¹ to RAM 201 _(−(n−1)), which correspond to one symbol stream of input data of at that time, via the selectors 204 ⁻¹ to 204 _(−(n−1)) as respectively.

[0131] As described above, 226 items of byte data are sequentially supplied as data of each one symbol of second or later, thereby executing calculations for 226 streams related to the external encoding calculation data stream. When the last symbol in the first divided part of the calculation of C2 parity is input as input data, the RAM 201 ⁻¹ to RAM 201 _(−(n−1)) store the result obtained at some midpoint of the calculation completed up to the end of the first divided part of the calculation of the C2 parity for 226 streams.

[0132] Next, the result obtained at some midpoint of the calculation of C2 parity for 226 streams is output. FIG. 18 shows a state at the time of outputting the result obtained at some midpoint of the calculation. At the time of this output, the selectors 204 ⁻¹ to 204 _(−n) respectively output the data, which has been supplied to their R sides. Therefore, at the time of this output, the selectors 204 ⁻¹ to 204 _(−(n−1)) respectively supply the outputs from the EX-OR gates 203 ⁻¹ to 203 _(−(n−1)) to the subsequent stages, and the selector 204 _(−n) outputs “00h”.

[0133] In this case, the “00h” is supplied to the matrix calculators 200 ⁻⁰ to 200 _(−(n−1)) as feedback data. When the feedback data is “00h”, the matrix calculators 200 ⁻⁰ to 200 _(−(n−1)) output “00h”. Therefore, the EX-OR gates 203 ⁻¹ to 203 _(−(n−1)) other than that located at the last stage, which operate based on the outputs from the matrix calculators 200 ⁻¹ to 200 _(−(n−1)) and the read data from the RAMs 201 ⁻⁰ to 201 _(−(n−2)) always output read data from the RAMs 201 ⁻⁰ to 201 _(−(n−2)) without undertaking any processing to the read data.

[0134] In summary, in this case, the RAMs 201 ⁻⁰ to 201 _(−(n−1)) simply operate as shift registers. Therefore, the RAM 201 _(−(n−1)) located at the last stage sequentially outputs the result obtained at the midpoint of the calculation of the C2 parity for 226 streams related to the external encoding calculation data stream. This result obtained from the midpoint of the calculation is supplied to the SDRAM 151 and is written therein.

[0135] In the manner as described above, the calculation of the C2 parity in the ECC block 0 is completed up to the end of the first divided part of calculation. Hereinafter, the same process as that of the ECC block 0 is repeated for sequentially calculating the C2 parity in the respective ECC blocks 1 to 35 up to the end of the first divided part.

[0136] Next, a second divided part of calculation of the C2 parity in ECC block 0 is performed. In this case, first of all, the result obtained at some midpoint of the calculation completed up to the end of the first divided part thereof is loaded. FIG. 19 shows a state at the time of loading.

[0137] At the time of loading, the selectors 204 ⁻⁰ to 204 _(−n) respectively output the data, which has been supplied to their W sides. Therefore, at the time of this loading, the selector 204 _(−n) outputs the input data. Then, the selectors 204 ⁻⁰ to 204 _(−(n−1)) respectively supply the input data, which has been output from the selector 204 _(−n) to the RAMs 201 ⁻⁰ to 201 _(−(n−1)) located at subsequent stages. In this manner, the RAM 201 ⁻⁰ to 201 _(−(n−1)) store the result obtained at some midpoint of the calculation of C2 parity in ECC block. As a result, the calculating apparatus 170 returns to the last calculation state in the first divided part.

[0138] From this state, the second divided part of the calculation of the C2 parity in the ECC block 0 is continued. Then, the result obtained at some midpoint of the calculation of C2 parity completed up to the second divided part is output to the SDRAM 151 and is written therein. The operation of calculation and the operation of outputting the result obtained at some midpoint of the calculation are the same as that of the first divided part described above. Hereinafter, the process for the ECC block 0 described above is repeated for sequentially calculating the C2 parity in the respective ECC blocks 1 to 35.

[0139] Hereinafter, in the same manner as described above, the calculation of the C2 parity in the respective ECC blocks 1 to 35 is continued from the last calculation state in the second divided part up to the end of the third processing part. Then, the calculation of the C2 parity in the respective ECC blocks 1 to 35 is continued from the last calculation state in the third divided part up to the end of the fourth divided part. In the last calculation state of the fourth divided part, the RAMs 201 ⁻⁰ to 201 _(−(n−1)) store the C2 parity to be finally obtained, instead of the result obtained at some midpoint of calculation. Therefore, when the calculation of the C2 parity in the respective ECC blocks 1 to 35 is completed in the fourth divided part, the SDRAM 151 stores the C2 parity in the respective 36 ECC blocks 0 to 35.

[0140] When the ECC encoder 155 is constituted by one calculating apparatus 170 as described above, the circuit scale and the memory scale can be reduced. In this case, when the calculation of the C2 parity in the respective ECC blocks is divided into a plurality of parts, the calculation of the C2 parity can be initiated before all of the video data for one field, which is a group of video data to be recorded on 12 tracks, is completely captured into the ECC encoder 113. Therefore, the calculation of the C2 parity can be completed at a point of time earlier than the case where the calculation is not divided, and the recording of video data can be initiated earlier by this shortened time. In this manner, the time required from the initiation of the input of the video data to the initiation of the recording of this video data can be shortened.

[0141]FIG. 20 shows an input process of video data (shown by a solid line “a”), a calculation process of C2 parity in the respective 36 ECC blocks (shown by an alternate long and short dash line “c”), and an output process of the C2 parity and the video data (shown by a broken line “b”) observed in this case.

[0142] Here, in the portion corresponding to “data” in the calculation of the C2 parity, video data is read from the SDRAM 151, and this read video data is input into the C2 encoder 155 to execute processing for obtaining the C2 parity. In the portion corresponding to “C2”, the result of calculation obtained in the C2 encoder 155 (the result obtained at some midpoint of the calculation or C2 parity) is written into the SDRAM 151, and the result of calculation (the result obtained at some midpoint of the calculation) is read from the SDRAM 151 (loading). The system delay Td in the ECC encoder 133 in this case is significantly shortened as compared with the system delay Tc in the case where the calculation is not divided (see FIG. 15).

[0143] Although the above description has described an example where the calculation of the C2 parity in the respective ECC blocks is divided into four parts, this number of divided parts is only an example, and the present invention is not limited thereto. The calculation of the C2 parity can be initiated at earlier point of time by increasing the number of divided parts. However, increased number of divided parts will increase the time required for writing and reading into and from the SDRAM 151, and the time required for calculating the C2 parity increases, resulting in delay of the point of time at which the calculation is completed. Taking these circumstances into consideration, the number of divided parts may be determined so as to minimize the system delay Td.

[0144] Further, in the above description, the ECC encoder 155 is constituted by one calculating apparatus 170. Alternatively, the ECC encoder 155 may be constituted by 2 or more but less than 36 calculating apparatus, and the calculation of the C2 parity in the respective ECC blocks may be performed with the calculation being divided into a plurality of parts. For example, the ECC encoder 155 may be constituted by two pieces of calculating apparatus 170. In this case, each of the two pieces of the calculating apparatus 170 performs the calculation of the C2 parity in the respective 18 ECC blocks. Alternatively, the ECC encoder 155 may be constituted by 4 pieces of calculating apparatus 170. In this case, each of the pieces of the calculating apparatus 170 performs the calculation of the C2 parity in the respective 9 ECC blocks.

[0145] Further, in the above description, the RAMs 201 ⁻⁰ to 201 _(−(n−1)) have a word length in data length of an internal encoding calculation data stream (226 bytes), in order to make it possible to execute the external encoding calculation without converting the input signal in the lateral stream into that in the vertical stream at the time of external encoding calculation. Alternatively, the RAMs 201 ⁻⁰ to 201 _(−(n−1)) may have a word length (226 bytes) or less or may be substituted by flip-flops, as far as they additionally include functional blocks for converting the lateral stream into the vertical stream.

[0146] In the embodiment described above, although the present invention has been applied to recording video data, the present invention is also applicable for recording audio data. Further, the recording medium is not limited to a magnetic tape, but may be other recording mediums such as magnetic disks, optical disks, and the like.

[0147] While the foregoing specification has described preferred embodiment (s) of the present invention, one skilled in the art may make many modifications to the preferred embodiment without departing from the invention in its broader aspects. The appended claims therefore are intended to cover all such modifications as fall within the true scope and spirit of the invention. 

What is claimed is:
 1. A data recording method for performing error correction encoding on input data for each encoding unit by use of a product code and recording said error-correction encoded data on at least one track of a recording medium in at least one encoding unit, comprising the steps of: sequentially recording first sync-block on said at least one track, said first sync-block being constituted by adding an internal encoding parity to data string of said input data constituting an internal encoding calculation data stream; and after said first sync-block is completely recorded, sequentially recording second sync-block, said second sync-block being constituted by adding the internal encoding parity to data string of an external encoding parity constituting the internal encoding calculation data stream.
 2. The data recording method according to claim 1, wherein in each item of said error-correction encoded data recorded on said at least one track of the recording medium in at least one encoding unit, the external encoding parity is calculated with the calculation being divided into a plurality of parts.
 3. A data recording apparatus for performing error correction encoding on input data for each encoding unit by use of a product code and recording said error-correction encoded data on at least one track of a recording medium in at least one encoding unit, said apparatus comprising: external encoding parity calculator for calculating and obtaining an external encoding parity for each encoding unit from data string constituting an external encoding calculation data stream; internal encoding parity calculator for calculating and obtaining an internal encoding parity for each encoding unit from data string constituting an internal encoding calculation data stream; and recorder for recording first sync-block sequentially on at least one track, said first sync-block being constituted by adding an internal encoding parity obtained by the calculation of said internal encoding parity calculator to data string of said input data constituting an internal encoding calculation data stream, and for recording second sync-block sequentially after said first sync-block is completely recorded, said second sync-block being constituted by adding the internal encoding parity obtained by the calculation of said internal encoding parity calculator to data string of the external encoding parity obtained by the calculation of said external encoding parity calculator, said data string of the external encoding parity constituting the internal encoding calculation data stream.
 4. The data recording apparatus according to claim 3, wherein error-correction encoded data in m pieces of encoding units (m is an integer of 2 or larger) is recorded on at least one track of said recording medium; and wherein said external encoding parity calculator includes at least said m pieces of calculating apparatus for calculating an external encoding parity.
 5. The data recording apparatus according to claim 3, wherein error-correction encoded data in m pieces of encoding units (m is an integer of 2 or larger) is recorded on at least one track of said recording medium; wherein said external encoding parity calculator includes calculating apparatus in the number smaller than said m pieces; and wherein in each of the m pieces of encoding units of said data, the external encoding parity is calculated with the calculation being divided into a plurality of parts. 